{extend name="common/common" /}

{block name="content"}
<div class="layui-upload" style="padding: 15px;">
  <button type="button" class="layui-btn layui-btn-normal" id="fileList">选择文件</button>
  <div class="layui-upload-list">
    <table class="layui-table">
      <thead>
        <tr><th>文件名</th>
        <th>大小</th>
        <th>状态</th>
        <th>操作</th>
      </tr></thead>
      <tbody id="demoList"></tbody>
    </table>
  </div>
  <button type="button" class="layui-btn" id="fileListAction">开始上传</button>
</div>
<div style="display: none;">
	<div id="multiple">{$multiple}</div>
	<div id="targetpath">{$targetpath}</div>
	<div id="action">{$action}</div>
	<div id="data_ext">{$data_ext}</div>
</div>
{/block}

{block name="script"}
<script type="text/javascript">
$(function(){
	var multiple_bool = $('#multiple').text();
	var targetpath = $('#targetpath').text();
	var action = $('#action').text();
	var data_ext = $('#data_ext').text();
	if(multiple_bool == 'true'){
		multiple_bool = true;
	}else{
		multiple_bool = false;
	}
	layui.use('upload', function(){
	  	var $ = layui.jquery,upload = layui.upload;
		//多文件列表
	 	var demoListView = $('#demoList'),uploadListIns = upload.render({
	    elem: '#fileList',
	    url: '/admin/attachment/uploadAttach?targetpath='+targetpath+'&data_ext='+data_ext,
	    accept: 'file',
	    multiple: multiple_bool,
	    auto: false,
	    bindAction: '#fileListAction',
	    choose: function(obj){
	      	var files = this.files = obj.pushFile(); //将每次选择的文件追加到文件队列
	      	//读取本地文件
	      	obj.preview(function(index, file, result){
	        var tr = $(['<tr id="upload-'+ index +'">'
	          ,'<td>'+ file.name +'</td>'
	          ,'<td>'+ (file.size/1014).toFixed(1) +'kb</td>'
	          ,'<td>等待上传</td>'
	          ,'<td>'
	            ,'<button class="layui-btn layui-btn-mini demo-reload layui-hide">重传</button>'
	            ,'<button class="layui-btn layui-btn-mini layui-btn-danger demo-delete">删除</button>'
	          ,'</td>'
	        ,'</tr>'].join(''));

	        //单个重传
	        tr.find('.demo-reload').on('click', function(){
	          obj.upload(index, file);
	        });

	        //删除
	        tr.find('.demo-delete').on('click', function(){
	          delete files[index]; //删除对应的文件
	          tr.remove();
	          uploadListIns.config.elem.next()[0].value = ''; //清空 input file 值，以免删除后出现同名文件不可选
	        });

	        demoListView.append(tr);
	      });
	    },
	    done: function(res, index, upload){
			if(res.code == 1){ //上传成功
				var tr = demoListView.find('tr#upload-'+ index),tds = tr.children();
				tds.eq(2).html('<span style="color: #5FB878;">上传成功</span>');
				tds.eq(3).html(''); //清空操作
				if(action != ''){
					$.post(action,{id:res.data.id},function(res){
						layer.msg(res.msg);
					});
				}
				return delete this.files[index]; //删除文件队列已经上传成功的文件
			}else{
				var tr = demoListView.find('tr#upload-'+ index),tds = tr.children();
			  	tds.eq(2).html('<span style="color: #FF5722;">上传失败,'+res.msg+'</span>');
			  	tds.eq(3).find('.demo-reload').removeClass('layui-hide'); //显示重传
			}
			this.error(index, upload);
	    },error: function(res,index, upload){
	      	var tr = demoListView.find('tr#upload-'+ index),tds = tr.children();
	      	tds.eq(2).html('<span style="color: #FF5722;">上传失败,'+res.msg+'</span>');
	      	tds.eq(3).find('.demo-reload').removeClass('layui-hide'); //显示重传
	    }
	  });
	});
});

</script>
{/block}
